1. |
CS4205 |
Cloud Computing ▼
|
3 |
0 |
0 |
3 |
Cloud Computing - Detailed Syllabus
Course Number CS4205
Course Credit
(L-T-P-C) 3-0-0-3
Course Title Cloud Computing
Learning Mode Offline
Learning Objectives This course aims to help the students (a) define and explain
the fundamental concepts and principles of cloud computing; (b) identify and
describe various cloud computing service models (IaaS, PaaS, SaaS) and
deployment models (public, private, hybrid, community); (c) understand the
underlying technologies and infrastructure used in cloud computing, including
virtualization, containers, and software-defined networking; (d) evaluate the
benefits and challenges of adopting cloud computing for businesses and
organizations; (e) design and implement cloud-based solutions for common use
cases, such as web hosting, data storage, and application development; and (f)
analyze security, privacy, and compliance considerations in cloud computing
environments.
Course Description This course provides a comprehensive overview of cloud
computing, covering its fundamental concepts, architecture, and deployment
models. Students will explore the various service models, including
Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software
as a Service (SaaS), and understand the benefits and challenges associated with
each. The course delves into cloud storage, computing resources, and
virtualization technologies, offering hands-on experience with leading cloud
platforms such as AWS, Azure, and Google Cloud. Security, compliance, and cost
management in cloud environments are also addressed, equipping students with the
skills to design, deploy, and manage cloud-based solutions effectively.
Course Outline Introduction to Cloud Computing- Overview of cloud computing and
its key principles, Fundamentals of distributed systems: Models and
architectures. Cloud Storage and Virtualization- Understanding cloud storage
technologies: Key-value stores, NoSQL databases, Virtualization techniques for
resource abstraction and management
Distributed Algorithms in Cloud Computing- Fault tolerance and consensus
algorithms: PAXOS, leader election, Time ordering and distributed mutual
exclusion. Industry Systems and Cloud Platforms- Overview of industry-standard
cloud platforms: Apache Spark, Apache Zookeeper, HBase, Introduction to
containerization technologies: Docker, Kubernetes
Advanced Topics in Cloud Computing- Big data processing in the cloud: MapReduce,
Apache Cassandra, Emerging trends in cloud computing: Edge computing, serverless
architectures
Learning Outcome • Define and explain the key concepts and components of cloud
computing, including virtualization, elasticity, and on-demand provisioning.
• Evaluate different cloud computing service models and deployment models, and
select appropriate options for specific use cases and requirements.
• Demonstrate proficiency in deploying and managing cloud-based resources using
popular cloud platforms (e.g., AWS, Azure, Google Cloud).
• Analyze the economic factors and cost considerations associated with cloud
computing, including pricing models and Total Cost of Ownership (TCO)
calculations.
• Design and implement scalable and resilient cloud architectures using best
practices and design patterns.
• Assess security risks and implement appropriate security controls to protect
cloud-based assets and data.
Assessment Method Internal(Quiz/Assignment/Project), Mid-Term, End-Term
|
2. |
CS4206 |
Quantum Computing ▼
|
3 |
0 |
0 |
3 |
Quantum Computing - Detailed Syllabus
Course Number
|
CS4206
|
Course Credit
(L-T-P-C)
|
3-0-0-3
|
Course Title
|
Quantum Computing
|
Learning Mode
|
Offline
|
Learning Objectives
|
This course aims to help the students (a) comprehend the
foundational principles of quantum mechanics that underpin
quantum computing.(b) proficiency in designing and analyzing
quantum circuits.(c) explore and understand advanced quantum
algorithms used in quantum computing.(d) quantum computing
principles to solve computational problems and simulate
quantum systems.
|
Course Description
|
Explore the foundational principles and transformative
potential of quantum mechanics and quantum computing in this
comprehensive course. Students will delve into quantum
mechanics, covering concepts like superposition,
entanglement, and quantum measurement, and their application
to quantum computing. Through lectures, practical sessions,
and case studies, participants will master quantum circuit
design, analyze advanced quantum algorithms such as Grover's
and Shor's algorithms, and apply these principles to solve
real-world computational problems. By the end of the course,
students will possess the theoretical understanding and
practical skills needed to contribute to the rapidly
advancing field of quantum computing across diverse
industries.
|
Course Outline
|
States, Wavefunction, Orthogonality and Orthonormality of
Wave function, Superposition
Quantum Circuits: Single-qubit gates, Multiple qubit gates,
Design of quantum circuits, Dirac Notations, Measurements,
Bloch Sphere
Entanglement, Bell State, Teleportation, Q-Sphere, Data
Structures for Quantum Computing, Quantum Annealing
Quantum Algorithms: Grover’s Search Algorithm,
Shor’s Factoring Algorithm, Quantum Amplitude
Estimation, Quantum Phase Estimation, Quantum Fourier
Transform
|
Learning Outcome
|
- Understand Fundamental Quantum Mechanics Principles.
- Develop Skills in Quantum Circuit Computing and
Analysis.
- Explore Advanced Quantum Computing Concepts.
- Gain proficiency in Master Quantum Algorithms.
|
Assessment Method
|
Internal(Quiz/Assignment/Project), Mid-Term, End-Term
|
|
3. |
CS4207 |
Drone Data Processing ▼
|
3 |
0 |
0 |
3 |
Drone Data Processing - Detailed Syllabus
Course Number
|
CS4207
|
Course Credit
(L-T-P-C)
|
3-0-0-3
|
Course Title
|
Drone Data Processing
|
Learning Mode
|
Offline
|
Learning Objectives
|
This course aims to help the students (a) gain foundational
knowledge of unmanned aerial systems (UAS), including their
history, components, and classifications; (b) comprehend the
various elements that make up a drone system, such as the
air vehicle, communication data links, command and control
elements, payloads, and launch/recovery systems; (c) acquire
the ability to design and plan drone missions, including
studying area maps, designing flight routes, and calibrating
sensors; (d) learn the principles and practices of
photogrammetry and geographic information systems (GIS) for
processing and analyzing drone-collected data; (e)
understand the importance of data quality, accuracy
standards, error estimation, and strategies for achieving
high-precision geospatial data.
|
Course Description
|
This course offers an in-depth exploration of Unmanned Aerial
Systems (UAS) and drone operations, providing a
comprehensive understanding of their history, types, and
technological advancements. Students will learn about the
various categories and missions of drones, the design and
communication systems essential for drone functionality, and
the roles and responsibilities in UAS operations. The course
covers the fundamentals of geospatial data, photogrammetry,
and GIS, emphasizing map accuracy and mission
planning.
|
Course Outline
|
Introduction to Unmanned Aerial Systems (UAS). Types,
Categories, and Missions of Drones. Drone Design and
Communication Systems. Concepts of Operations (CONOP) and
Risk Assessment
Geospatial Data and Photogrammetry. Drone Mission Planning
and Control. Route Planning and Operational Fundamentals.
Regulatory Requirements and Guidelines. Applications and
Challenges in Drone Operations
|
Learning Outcome
|
· Identify and
categorize various types of unmanned aerial systems and
their specific missions.
· Create
comprehensive mission plans, including route design, sensor
selection, and calibration, ensuring optimal data
collection.
· Utilize
photogrammetric methods and GIS tools to process and analyze
drone-collected data, producing accurate geospatial
products.
· Assess data
accuracy and quality, understand and apply mapping
standards, and manage errors in measurements effectively.
· Apply drone
technology in diverse fields such as agriculture,
construction, environmental monitoring, and disaster
response.
|
Assessment Method
|
Internal(Quiz/Assignment/Project), Mid-Term, End-Term
|
|
4. |
CS4208 |
Edge Computing ▼
|
3 |
0 |
0 |
3 |
Edge Computing - Detailed Syllabus
Course Number
|
CS4208
|
Course Credit
(L-T-P-C)
|
3-0-0-3
|
Course Title
|
Edge Computing
|
Learning Mode
|
Offline
|
Learning Objectives
|
This course aims to help the students (a) to define edge
computing and its role in modern computing paradigms; (b) to
understand the principles and benefits of moving computation
closer to the data source; (c) to identify various edge
computing architectures, including fog computing and mobile
edge computing; (d) to analyze and compare edge computing
frameworks and platforms; (e) design and implement edge
computing solutions to address latency, bandwidth, and
privacy concerns; (f) to evaluate the impact of edge
computing on traditional cloud computing models and network
infrastructures; (g) to discuss emerging trends and
challenges in edge computing, such as security,
interoperability, and resource management; and (h) to apply
edge computing principles and techniques to real-world
scenarios and use cases.
|
Course Description
|
This course provides a comprehensive overview of edge
computing, starting with the limitations of cloud computing
in supporting low latency and round trip time (RTT), and the
subsequent innovation waves leading to edge computing.
Students will delve into edge computing architectures and
their applications, including 5G slicing and self-driving
cars. Key concepts of distributed systems such as time
ordering, clock synchronization, and distributed snapshots
will be explored within the context of edge computing. The
course also introduces edge data centers, lightweight edge
clouds, and services provided by various service providers.
Practical knowledge of Docker containers and Kubernetes in
edge computing, along with the design of edge storage
systems like key-value stores, will be covered.
Additionally, students will learn about MQTT and Kafka for
creating end-to-end edge pipelines and edge analytics
topologies for M2M and WSN networks. The course concludes
with use cases of machine learning for edge sensor data,
including predictive maintenance, image classification, and
deep learning on-device inference to support
latency-sensitive applications.
|
Course Outline
|
Introduction to Cloud and its limitations to support low
latency and Round Trip Time (RTT). From Cloud to Edge
computing: Waves of innovation. Introduction to Edge
Computing Architectures. Edge Computing to support User
Applications (5G-Slicing, self-driving cars and more)
Concepts of distributed systems in edge computing such as
time ordering and clock synchronization, distributed
snapshot, etc. Introduction to Edge Data Center, Lightweight
Edge Clouds and its services provided by different service
providers.
Introduction to docker container and Kubernetes in edge
computing. Design of edge storage systems like key-value
stores. Introduction to MQTT and Kafka for end-to-end edge
pipeline. Edge analytics topologies for M2M and WSN network
(MQTT)
Use cases of machine learning for edge sensor data in
predictive maintenance, image classifier and self-driving
cars. Deep Learning On-Device inference at the edge to
support latency-based application
|
Learning Outcome
|
· Define and
explain the concept of edge computing and its significance
in distributed computing architectures.
· Analyze the
advantages and limitations of edge computing compared to
traditional centralized and cloud-based approaches.
· Identify and
describe different edge computing architectures, such as
hierarchical, decentralized, and hybrid models.
· Evaluate edge
computing platforms and tools for their suitability in
various application domains.
· Design and
implement edge computing solutions that leverage distributed
computing principles to improve performance, reliability,
and efficiency.
· Analyze the
impact of edge computing on network traffic, data privacy,
and regulatory compliance.
· Critically
assess the security implications of deploying edge computing
systems and propose mitigation strategies.
· Collaborate in
teams to develop and present case studies or projects
demonstrating the practical application of edge computing
concepts and techniques.
|
Assessment ethod
|
Internal(Quiz/Assignment/Project), Mid-Term, End-Term
|
|
5. |
CS4209 |
Wireless Networks ▼
|
3 |
0 |
0 |
3 |
Wireless Networks - Detailed Syllabus
Course Number
|
CS4209
|
Course Credit
(L-T-P-C)
|
3-0-0-3
|
Course Title
|
Wireless Networks
|
Learning Mode
|
Offline
|
Learning Objectives
|
In this subject, the students will be trained with the
knowledge of 802.11 wireless networks, including protocol
knowledge and the associated security vulnerabilities.
|
Course Description
|
In the consumer, industrial, and military sectors,
802.11-based wireless access networks have been widely used
due to their convenience. This application, however, is
reliant on the unstated assumptions of availability and
anonymity. The management and media access protocols
of 802.11 may be particularly vulnerable to malicious
denial-of-service (DoS) and various security attacks. This
course analyzes these 802.11-specific attacks, including
their applicability, effectiveness, and proposed low-cost
implementation improvements to mitigate the underlying
vulnerabilities.
|
Course Outline
|
Overview of 802.11 networks, 802.11 MAC Layer, Wireless LAN
physical components.
Wireless LAN topologies and technologies - 802.11 a/b/g/n/ac
features. Configure and install wireless adapters, access
points.
802.11 architecture (access points, SSID, channels, beacons,
scanning, association), Hidden terminal problem, RTS/CTS,
802.11 CSMA-CA protocol.
Wireless communication technology: FHSS, DSSS, CDMA etc.
Physical Layer, MAC Layer, MAC Management, Power Management.
Multiple access protocols: ALOHA, Carrier sense multiple
access protocols, collision free protocols.
802.11 Frame Structure & WLAN services-association,
disassociation, re-association, distribution, integration,
authentication, de-authentication and data delivery
services.
Security Features of 802.11: WEP, WPA1, and WPA2, PSK
Authentication, TKIP Encryption and AES-CCMP Encryption.
|
Learning Outcome
|
On successful completion of the course, students should be
able to:
· Understand the
fundamentals of 802.11 wireless networks
· Describe the
WLAN services-association, disassociation, re-association,
distribution, integration, authentication, de authentication
and data delivery services
· Comprehend the
vulnerabilities associated with 802.11 protocol.
|
Assessment Method
|
Internal(Quiz/Assignment/Project), Mid-Term, End-Term
|
|
6. |
CS4215 |
Distributed Computing ▼
|
3 |
0 |
0 |
3 |
Distributed Computing - Detailed Syllabus
Course Number
|
CS4215
|
Course Credit
(L-T-P-C)
|
3-0-0-3
|
Course Title
|
Distributed Computing
|
Learning Mode
|
Offline
|
Learning Objectives
|
This course aims to help the students (a) understand the
fundamental concepts and challenges of distributed
computing; (b) learn various communication models and
protocols used in distributed computing; (c) explore
distributed system architectures and design principles; (d)
gain knowledge of distributed coordination algorithms and
techniques; (e) study fault tolerance mechanisms and
reliability in distributed computing; (f) investigate
scalability issues and techniques for scaling distribute
computing.; (g) understand security concerns and mechanisms
in distributed environments; (h) analyze case studies of
real-world distributed computing; and (i) explore emerging
trends and technologies in distributed computing.
|
Course Description
|
This course offers a thorough exploration of distributed
computing, focusing on the fundamental concepts,
architectures, and algorithms that enable multiple computers
to work together seamlessly. Students will study the
principles of distributed systems, including communication,
synchronization, fault tolerance, and consistency. Key
topics include distributed databases, cloud computing,
distributed file systems, and parallel processing. The
course also covers contemporary technologies and frameworks
such as Hadoop, Spark, and Kubernetes. Through practical
assignments and projects, students will gain hands-on
experience in designing, implementing, and managing
distributed systems, preparing them to tackle complex
problems in a distributed computing environment.
|
Course Outline
|
Introduction to Distributed Computing: Overview of
distributed systems, Characteristics and challenges,
Examples of distributed systems. Distributed System Models
and Architectures: Client-server architecture, Peer-to-peer
(P2P) architecture, Middleware-based architectures,
Distributed object-based systems
Communication in Distributed Systems: Message passing,
Remote procedure calls (RPC), Message-oriented
middleware (MOM), Publish-subscribe systems. Distributed
Algorithms: Mutual exclusion, Leader election,
Distributed consensus, Distributed transactions
Distributed Data Management: Replication and consistency,
Distributed file systems (e.g., HDFS), Distributed databases
(e.g., Cassandra, MongoDB). Fault Tolerance and Reliability:
Fault models, Failure detection and recovery, Replication
and redundancy, Byzantine fault tolerance
Scalability and Performance: Scalability patterns, Load
balancing, Caching strategies, Performance measurement and
optimization. Case Studies and Advanced Topics: Google File
System (GFS), MapReduce, Apache Kafka, Docker and
container orchestration (e.g., Kubernetes)
|
Learning Outcome
|
· Students will
demonstrate a deep understanding of the fundamental
concepts, principles, and challenges of distributed
computing.
· Students will be
able to analyze, design, and implement distributed computing
solutions to address specific problems or requirements.
· Students will
critically evaluate different distributed system
architectures, algorithms, and technologies, considering
their strengths, weaknesses, and trade-offs.
· Students will
work collaboratively in teams to design and implement
distributed system projects, demonstrating effective
teamwork and project management skills.
· Students will
apply distributed systems principles and techniques to solve
real-world problems, demonstrating the relevance and
applicability of course concepts.
· Students will be
able to adapt to new developments and emerging trends in
distributed computing, demonstrating a continuous learning
mindset.
· Students will
reflect on their learning experiences throughout the course,
identifying areas of growth, challenges encountered, and
lessons learned for future application.
|
Assessment Method
|
Internal(Quiz/Assignment/Project), Mid-Term, End-Term.
|
|
7. |
CS4216 |
Parallel Computing ▼
|
3 |
0 |
0 |
3 |
Parallel Computing - Detailed Syllabus
Course number
|
CS4216
|
Course Credit
(L-T-P-C)
|
3-0-0-3
|
Course Title
|
Parallel computing
|
Learning Mode
|
offline
|
Learning Objectives
|
Fundamental theoretical issues in designing parallel
algorithms and architectures. Shared memory models of
parallel computation.
|
Course Description
|
This course will provide an overview of different methods and
tricks to solve problems in a multiprocessor environment.
|
Course Outline
|
Parallel Programming Models: Shared-memory
model (PRAM, MIMD, SIMD), network model (line, ring, mesh,
hypercube), performance measurement of parallel algorithms.
Algorithm Design Techniques for PRAM Models:
Balancing, divide and conquer, parallel prefix computation,
pointer jumping, symmetry breaking, pipelining, accelerated
cascading.
Algorithms for PRAM Models: List ranking,
sorting and searching, tree algorithms, graph algorithms.
Parallel Complexity: Lower bounds for PRAM
models, the complexity class NC, P-completeness.
|
Learning Outcome
|
· An understanding
of computer architectures at a high level, in order to
understand what can and cannot be done in parallel, and the
relative costs of operations like arithmetic, moving data,
etc.,
· To recognize
programming "patterns" to use the best available algorithms
and software to implement them,
· To understand
sources of parallelism and locality in simulation in
designing fast algorithms.
|
Assessment Method
|
Internal(Quiz/Assignment/Project), Mid-Term, End-Term.
|
|
TOTAL |
21 |
0 |
0 |
21 |